// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

'use strict';

// disable the ' quotemark, as we need to consume many strings from stdout that use that
// test delimiter exclusively.

// tslint:disable:quotemark

export enum PytestDataPlatformType {
    NonWindows = 'non-windows',
    Windows = 'windows'
}

export type PytestDiscoveryScenario = {
    pytest_version_spec: string;
    platform: string;
    description: string;
    rootdir: string;
    test_functions: string[];
    functionCount: number;
    stdout: string[];
};

// Data to test the pytest unit test parser with. See pytest.discovery.unit.test.ts.
export const pytestScenarioData: PytestDiscoveryScenario[] =
    [
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "src/test_things.py::test_things_major",
                "test/this/is/deep/testing/test_very_deeply.py::test_math_works"
            ],
            functionCount: 9,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 9 items",
                "<Module 'src/test_things.py'>",
                "  <Function 'test_things_major'>",
                "  <Function 'test_things_minor'>",
                "<Module 'src/under/test_other_stuff.py'>",
                "  <Function 'test_machine_values'>",
                "<Module 'src/under/test_stuff.py'>",
                "  <Function 'test_platform'>",
                "<Module 'test/test_other_other_things.py'>",
                "  <Function 'test_sys_ver'>",
                "<Module 'test/test_other_things.py'>",
                "  <Function 'test_sys_ver'>",
                "<Module 'test/this/is/deep/testing/test_deeply.py'>",
                "  <Function 'test_json_works'>",
                "  <Function 'test_json_numbers_work'>",
                "<Module 'test/this/is/deep/testing/test_very_deeply.py'>",
                "  <Function 'test_math_works'>",
                "",
                "========================= no tests ran in 0.02 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "src/test_things.py::test_things_major",
                "test/this/is/deep/testing/test_very_deeply.py::test_math_works"
            ],
            functionCount: 9,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 9 items",
                "<Module 'src/test_things.py'>",
                "  <Function 'test_things_major'>",
                "  <Function 'test_things_minor'>",
                "<Module 'src/under/test_other_stuff.py'>",
                "  <Function 'test_machine_values'>",
                "<Module 'src/under/test_stuff.py'>",
                "  <Function 'test_platform'>",
                "<Module 'test/test_other_other_things.py'>",
                "  <Function 'test_sys_ver'>",
                "<Module 'test/test_other_things.py'>",
                "  <Function 'test_sys_ver'>",
                "<Module 'test/this/is/deep/testing/test_deeply.py'>",
                "  <Function 'test_json_works'>",
                "  <Function 'test_json_numbers_work'>",
                "<Module 'test/this/is/deep/testing/test_very_deeply.py'>",
                "  <Function 'test_math_works'>",
                "",
                "========================= no tests ran in 0.18 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "src/test_things.py::test_things_major",
                "test/this/is/deep/testing/test_very_deeply.py::test_math_works"
            ],
            functionCount: 9,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 9 items",
                "<Module src/test_things.py>",
                "  <Function test_things_major>",
                "  <Function test_things_minor>",
                "<Module src/under/test_other_stuff.py>",
                "  <Function test_machine_values>",
                "<Module src/under/test_stuff.py>",
                "  <Function test_platform>",
                "<Module test/test_other_other_things.py>",
                "  <Function test_sys_ver>",
                "<Module test/test_other_things.py>",
                "  <Function test_sys_ver>",
                "<Module test/this/is/deep/testing/test_deeply.py>",
                "  <Function test_json_works>",
                "  <Function test_json_numbers_work>",
                "<Module test/this/is/deep/testing/test_very_deeply.py>",
                "  <Function test_math_works>",
                "",
                "========================= no tests ran in 0.18 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "src/test_things.py::test_things_major",
                "src/under/test_stuff.py::test_platform"
            ],
            functionCount: 5,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 5 items",
                "<Module 'src/test_things.py'>",
                "  <Function 'test_things_major'>",
                "  <Function 'test_things_minor'>",
                "<Module 'src/test_things_again.py'>",
                "  <Function 'test_it_over_again'>",
                "<Module 'src/under/test_other_stuff.py'>",
                "  <Function 'test_machine_values'>",
                "<Module 'src/under/test_stuff.py'>",
                "  <Function 'test_platform'>",
                "",
                "========================= no tests ran in 0.05 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "src/test_things.py::test_things_major",
                "src/under/test_stuff.py::test_platform"
            ],
            functionCount: 5,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 5 items",
                "<Module 'src/test_things.py'>",
                "  <Function 'test_things_major'>",
                "  <Function 'test_things_minor'>",
                "<Module 'src/test_things_again.py'>",
                "  <Function 'test_it_over_again'>",
                "<Module 'src/under/test_other_stuff.py'>",
                "  <Function 'test_machine_values'>",
                "<Module 'src/under/test_stuff.py'>",
                "  <Function 'test_platform'>",
                "",
                "========================= no tests ran in 0.03 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "src/test_things.py::test_things_major",
                "src/under/test_stuff.py::test_platform"
            ],
            functionCount: 5,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 5 items",
                "<Module src/test_things.py>",
                "  <Function test_things_major>",
                "  <Function test_things_minor>",
                "<Module src/test_things_again.py>",
                "  <Function test_it_over_again>",
                "<Module src/under/test_other_stuff.py>",
                "  <Function test_machine_values>",
                "<Module src/under/test_stuff.py>",
                "  <Function test_platform>",
                "",
                "========================= no tests ran in 0.03 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_things.py::test_things_major",
                "under/test_stuff.py::test_platform"
            ],
            functionCount: 5,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 5 items",
                "<Module 'test_things.py'>",
                "  <Function 'test_things_major'>",
                "  <Function 'test_things_minor'>",
                "<Module 'test_things_again.py'>",
                "  <Function 'test_it_over_again'>",
                "<Module 'under/test_other_stuff.py'>",
                "  <Function 'test_machine_values'>",
                "<Module 'under/test_stuff.py'>",
                "  <Function 'test_platform'>",
                "",
                "========================= no tests ran in 0.12 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_things.py::test_things_major",
                "under/test_stuff.py::test_platform"
            ],
            functionCount: 5,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 5 items",
                "<Module 'test_things.py'>",
                "  <Function 'test_things_major'>",
                "  <Function 'test_things_minor'>",
                "<Module 'test_things_again.py'>",
                "  <Function 'test_it_over_again'>",
                "<Module 'under/test_other_stuff.py'>",
                "  <Function 'test_machine_values'>",
                "<Module 'under/test_stuff.py'>",
                "  <Function 'test_platform'>",
                "",
                "========================= no tests ran in 0.12 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_things.py::test_things_major",
                "under/test_stuff.py::test_platform"
            ],
            functionCount: 5,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 5 items",
                "<Module test_things.py>",
                "  <Function test_things_major>",
                "  <Function test_things_minor>",
                "<Module test_things_again.py>",
                "  <Function test_it_over_again>",
                "<Module under/test_other_stuff.py>",
                "  <Function test_machine_values>",
                "<Module under/test_stuff.py>",
                "  <Function test_platform>",
                "",
                "========================= no tests ran in 0.12 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 test modules in a subfolder off the root.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "under/test_other_stuff.py::test_machine_values",
                "under/test_stuff.py::test_platform"
            ],
            functionCount: 2,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 2 items",
                "<Module 'under/test_other_stuff.py'>",
                "  <Function 'test_machine_values'>",
                "<Module 'under/test_stuff.py'>",
                "  <Function 'test_platform'>",
                "",
                "========================= no tests ran in 0.06 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 test modules in a subfolder off the root.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "under/test_other_stuff.py::test_machine_values",
                "under/test_stuff.py::test_platform"
            ],
            functionCount: 2,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 2 items",
                "<Module 'under/test_other_stuff.py'>",
                "  <Function 'test_machine_values'>",
                "<Module 'under/test_stuff.py'>",
                "  <Function 'test_platform'>",
                "",
                "========================= no tests ran in 0.05 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 test modules in a subfolder off the root.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "under/test_other_stuff.py::test_machine_values",
                "under/test_stuff.py::test_platform"
            ],
            functionCount: 2,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 2 items",
                "<Module under/test_other_stuff.py>",
                "  <Function test_machine_values>",
                "<Module under/test_stuff.py>",
                "  <Function test_platform>",
                "",
                "========================= no tests ran in 0.05 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 modules at the topmost level.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_other_stuff.py::test_machine_values",
                "test_stuff.py::test_platform"
            ],
            functionCount: 2,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 2 items",
                "<Module 'test_other_stuff.py'>",
                "  <Function 'test_machine_values'>",
                "<Module 'test_stuff.py'>",
                "  <Function 'test_platform'>",
                "",
                "========================= no tests ran in 0.05 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 modules at the topmost level.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_other_stuff.py::test_machine_values",
                "test_stuff.py::test_platform"
            ],
            functionCount: 2,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 2 items",
                "<Module 'test_other_stuff.py'>",
                "  <Function 'test_machine_values'>",
                "<Module 'test_stuff.py'>",
                "  <Function 'test_platform'>",
                "",
                "========================= no tests ran in 0.05 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Non-package source, 2 modules at the topmost level.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_other_stuff.py::test_machine_values",
                "test_stuff.py::test_platform"
            ],
            functionCount: 2,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 2 items",
                "<Module test_other_stuff.py>",
                "  <Function test_machine_values>",
                "<Module test_stuff.py>",
                "  <Function test_platform>",
                "",
                "========================= no tests ran in 0.05 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_basic_root.py::test_basic_major",
                "test/test_other_basic.py::test_basic_major_minor_internal",
                "test/subdir/under/another/subdir/test_other_basic_sub.py::test_basic_major_minor"
            ],
            functionCount: 16,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 16 items",
                "<Module 'test_basic_root.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test_other_basic_root.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test/test_basic.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test/test_other_basic.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test/subdir/under/another/subdir/test_basic_sub.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test/subdir/under/another/subdir/test_other_basic_sub.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test/uneven/folders/test_basic_uneven.py'>",
                "  <Function 'test_basic_major_uneven'>",
                "  <Function 'test_basic_minor_uneven'>",
                "<Module 'test/uneven/folders/test_other_basic_uneven.py'>",
                "  <Function 'test_basic_major_minor_uneven'>",
                "  <Function 'test_basic_major_minor_internal_uneven'>",
                "",
                "========================= no tests ran in 0.07 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_basic_root.py::test_basic_major",
                "test/test_other_basic.py::test_basic_major_minor_internal",
                "test/subdir/under/another/subdir/test_other_basic_sub.py::test_basic_major_minor",
                "test/uneven/folders/test_other_basic_uneven.py::test_basic_major_minor_internal_uneven"
            ],
            functionCount: 16,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 16 items",
                "<Package '/home/user/test/pytest_scenario'>",
                "  <Module 'test_basic_root.py'>",
                "    <Function 'test_basic_major'>",
                "    <Function 'test_basic_minor'>",
                "  <Module 'test_other_basic_root.py'>",
                "    <Function 'test_basic_major_minor'>",
                "    <Function 'test_basic_major_minor_internal'>",
                "  <Package '/home/user/test/pytest_scenario/test'>",
                "    <Module 'test_basic.py'>",
                "      <Function 'test_basic_major'>",
                "      <Function 'test_basic_minor'>",
                "    <Module 'test_other_basic.py'>",
                "      <Function 'test_basic_major_minor'>",
                "      <Function 'test_basic_major_minor_internal'>",
                "    <Package '/home/user/test/pytest_scenario/test/subdir'>",
                "      <Package '/home/user/test/pytest_scenario/test/subdir/under'>",
                "        <Package '/home/user/test/pytest_scenario/test/subdir/under/another'>",
                "          <Package '/home/user/test/pytest_scenario/test/subdir/under/another/subdir'>",
                "            <Module 'test_basic_sub.py'>",
                "              <Function 'test_basic_major'>",
                "              <Function 'test_basic_minor'>",
                "            <Module 'test_other_basic_sub.py'>",
                "              <Function 'test_basic_major_minor'>",
                "              <Function 'test_basic_major_minor_internal'>",
                "    <Package '/home/user/test/pytest_scenario/test/uneven'>",
                "      <Package '/home/user/test/pytest_scenario/test/uneven/folders'>",
                "        <Module 'test_basic_uneven.py'>",
                "          <Function 'test_basic_major_uneven'>",
                "          <Function 'test_basic_minor_uneven'>",
                "        <Module 'test_other_basic_uneven.py'>",
                "          <Function 'test_basic_major_minor_uneven'>",
                "          <Function 'test_basic_major_minor_internal_uneven'>",
                "",
                "========================= no tests ran in 0.13 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_basic_root.py::test_basic_major",
                "test/test_other_basic.py::test_basic_major_minor_internal",
                "test/subdir/under/another/subdir/test_other_basic_sub.py::test_basic_major_minor",
                "test/uneven/folders/test_other_basic_uneven.py::test_basic_major_minor_internal_uneven"
            ],
            functionCount: 16,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 16 items",
                "<Package /home/user/test/pytest_scenario>",
                "  <Module test_basic_root.py>",
                "    <Function test_basic_major>",
                "    <Function test_basic_minor>",
                "  <Module test_other_basic_root.py>",
                "    <Function test_basic_major_minor>",
                "    <Function test_basic_major_minor_internal>",
                "  <Package /home/user/test/pytest_scenario/test>",
                "    <Module test_basic.py>",
                "      <Function test_basic_major>",
                "      <Function test_basic_minor>",
                "    <Module test_other_basic.py>",
                "      <Function test_basic_major_minor>",
                "      <Function test_basic_major_minor_internal>",
                "    <Package /home/user/test/pytest_scenario/test/subdir>",
                "      <Package /home/user/test/pytest_scenario/test/subdir/under>",
                "        <Package /home/user/test/pytest_scenario/test/subdir/under/another>",
                "          <Package /home/user/test/pytest_scenario/test/subdir/under/another/subdir>",
                "            <Module test_basic_sub.py>",
                "              <Function test_basic_major>",
                "              <Function test_basic_minor>",
                "            <Module test_other_basic_sub.py>",
                "              <Function test_basic_major_minor>",
                "              <Function test_basic_major_minor_internal>",
                "    <Package /home/user/test/pytest_scenario/test/uneven>",
                "      <Package /home/user/test/pytest_scenario/test/uneven/folders>",
                "        <Module test_basic_uneven.py>",
                "          <Function test_basic_major_uneven>",
                "          <Function test_basic_minor_uneven>",
                "        <Module test_other_basic_uneven.py>",
                "          <Function test_basic_major_minor_uneven>",
                "          <Function test_basic_major_minor_internal_uneven>",
                "",
                "========================= no tests ran in 0.13 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test/test_other_basic.py::test_basic_major_minor_internal",
                "test/subdir/test_other_basic_sub.py::test_basic_major_minor"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Module 'test/test_basic.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test/test_basic_root.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test/test_other_basic.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test/test_other_basic_root.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test/subdir/test_basic_sub.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test/subdir/test_other_basic_sub.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "",
                "========================= no tests ran in 0.18 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test/test_other_basic.py::test_basic_major_minor_internal",
                "test/subdir/test_other_basic_sub.py::test_basic_major_minor"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Package '/home/user/test/pytest_scenario'>",
                "  <Package '/home/user/test/pytest_scenario/test'>",
                "    <Module 'test_basic.py'>",
                "      <Function 'test_basic_major'>",
                "      <Function 'test_basic_minor'>",
                "    <Module 'test_basic_root.py'>",
                "      <Function 'test_basic_major'>",
                "      <Function 'test_basic_minor'>",
                "    <Module 'test_other_basic.py'>",
                "      <Function 'test_basic_major_minor'>",
                "      <Function 'test_basic_major_minor_internal'>",
                "    <Module 'test_other_basic_root.py'>",
                "      <Function 'test_basic_major_minor'>",
                "      <Function 'test_basic_major_minor_internal'>",
                "    <Package '/home/user/test/pytest_scenario/test/subdir'>",
                "      <Module 'test_basic_sub.py'>",
                "        <Function 'test_basic_major'>",
                "        <Function 'test_basic_minor'>",
                "      <Module 'test_other_basic_sub.py'>",
                "        <Function 'test_basic_major_minor'>",
                "        <Function 'test_basic_major_minor_internal'>",
                "",
                "========================= no tests ran in 0.07 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test/test_other_basic.py::test_basic_major_minor_internal",
                "test/subdir/test_other_basic_sub.py::test_basic_major_minor"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Package /home/user/test/pytest_scenario>",
                "  <Package /home/user/test/pytest_scenario/test>",
                "    <Module test_basic.py>",
                "      <Function test_basic_major>",
                "      <Function test_basic_minor>",
                "    <Module test_basic_root.py>",
                "      <Function test_basic_major>",
                "      <Function test_basic_minor>",
                "    <Module test_other_basic.py>",
                "      <Function test_basic_major_minor>",
                "      <Function test_basic_major_minor_internal>",
                "    <Module test_other_basic_root.py>",
                "      <Function test_basic_major_minor>",
                "      <Function test_basic_major_minor_internal>",
                "    <Package /home/user/test/pytest_scenario/test/subdir>",
                "      <Module test_basic_sub.py>",
                "        <Function test_basic_major>",
                "        <Function test_basic_minor>",
                "      <Module test_other_basic_sub.py>",
                "        <Function test_basic_major_minor>",
                "        <Function test_basic_major_minor_internal>",
                "",
                "========================= no tests ran in 0.07 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2+ test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_other_basic_root.py::test_basic_major_minor_internal",
                "test/test_other_basic_sub.py::test_basic_major_minor"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Module 'test_basic.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test_basic_root.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test_other_basic.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test_other_basic_root.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test/test_basic_sub.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test/test_other_basic_sub.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "",
                "========================= no tests ran in 0.18 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2+ test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_other_basic_root.py::test_basic_major_minor_internal",
                "test/test_basic_sub.py::test_basic_major",
                "test/test_basic_sub.py::test_basic_minor"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Package '/home/user/test/pytest_scenario'>",
                "  <Module 'test_basic.py'>",
                "    <Function 'test_basic_major'>",
                "    <Function 'test_basic_minor'>",
                "  <Module 'test_basic_root.py'>",
                "    <Function 'test_basic_major'>",
                "    <Function 'test_basic_minor'>",
                "  <Module 'test_other_basic.py'>",
                "    <Function 'test_basic_major_minor'>",
                "    <Function 'test_basic_major_minor_internal'>",
                "  <Module 'test_other_basic_root.py'>",
                "    <Function 'test_basic_major_minor'>",
                "    <Function 'test_basic_major_minor_internal'>",
                "  <Package '/home/user/test/pytest_scenario/test'>",
                "    <Module 'test_basic_sub.py'>",
                "      <Function 'test_basic_major'>",
                "      <Function 'test_basic_minor'>",
                "    <Module 'test_other_basic_sub.py'>",
                "      <Function 'test_basic_major_minor'>",
                "      <Function 'test_basic_major_minor_internal'>",
                "",
                "========================= no tests ran in 0.22 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2+ test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_other_basic_root.py::test_basic_major_minor_internal",
                "test/test_basic_sub.py::test_basic_major",
                "test/test_basic_sub.py::test_basic_minor"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Package /home/user/test/pytest_scenario>",
                "  <Module test_basic.py>",
                "    <Function test_basic_major>",
                "    <Function test_basic_minor>",
                "  <Module test_basic_root.py>",
                "    <Function test_basic_major>",
                "    <Function test_basic_minor>",
                "  <Module test_other_basic.py>",
                "    <Function test_basic_major_minor>",
                "    <Function test_basic_major_minor_internal>",
                "  <Module test_other_basic_root.py>",
                "    <Function test_basic_major_minor>",
                "    <Function test_basic_major_minor_internal>",
                "  <Package /home/user/test/pytest_scenario/test>",
                "    <Module test_basic_sub.py>",
                "      <Function test_basic_major>",
                "      <Function test_basic_minor>",
                "    <Module test_other_basic_sub.py>",
                "      <Function test_basic_major_minor>",
                "      <Function test_basic_major_minor_internal>",
                "",
                "========================= no tests ran in 0.22 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2+ test modules in a subfolder off the root.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test/test_basic.py::test_basic_minor",
                "test/test_other_basic.py::test_basic_major_minor",
                "test/test_other_basic_root.py::test_basic_major_minor",
                "test/test_other_basic_sub.py::test_basic_major_minor_internal"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Module 'test/test_basic.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test/test_basic_root.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test/test_basic_sub.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test/test_other_basic.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test/test_other_basic_root.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test/test_other_basic_sub.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "",
                "========================= no tests ran in 0.15 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2+ test modules in a subfolder off the root.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test/test_basic.py::test_basic_minor",
                "test/test_other_basic.py::test_basic_major_minor",
                "test/test_other_basic_root.py::test_basic_major_minor",
                "test/test_other_basic_sub.py::test_basic_major_minor_internal"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Package '/home/user/test/pytest_scenario'>",
                "  <Package '/home/user/test/pytest_scenario/test'>",
                "    <Module 'test_basic.py'>",
                "      <Function 'test_basic_major'>",
                "      <Function 'test_basic_minor'>",
                "    <Module 'test_basic_root.py'>",
                "      <Function 'test_basic_major'>",
                "      <Function 'test_basic_minor'>",
                "    <Module 'test_basic_sub.py'>",
                "      <Function 'test_basic_major'>",
                "      <Function 'test_basic_minor'>",
                "    <Module 'test_other_basic.py'>",
                "      <Function 'test_basic_major_minor'>",
                "      <Function 'test_basic_major_minor_internal'>",
                "    <Module 'test_other_basic_root.py'>",
                "      <Function 'test_basic_major_minor'>",
                "      <Function 'test_basic_major_minor_internal'>",
                "    <Module 'test_other_basic_sub.py'>",
                "      <Function 'test_basic_major_minor'>",
                "      <Function 'test_basic_major_minor_internal'>",
                "",
                "========================= no tests ran in 0.15 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2+ test modules in a subfolder off the root.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test/test_basic.py::test_basic_minor",
                "test/test_other_basic.py::test_basic_major_minor",
                "test/test_other_basic_root.py::test_basic_major_minor",
                "test/test_other_basic_sub.py::test_basic_major_minor_internal"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Package /home/user/test/pytest_scenario>",
                "  <Package /home/user/test/pytest_scenario/test>",
                "    <Module test_basic.py>",
                "      <Function test_basic_major>",
                "      <Function test_basic_minor>",
                "    <Module test_basic_root.py>",
                "      <Function test_basic_major>",
                "      <Function test_basic_minor>",
                "    <Module test_basic_sub.py>",
                "      <Function test_basic_major>",
                "      <Function test_basic_minor>",
                "    <Module test_other_basic.py>",
                "      <Function test_basic_major_minor>",
                "      <Function test_basic_major_minor_internal>",
                "    <Module test_other_basic_root.py>",
                "      <Function test_basic_major_minor>",
                "      <Function test_basic_major_minor_internal>",
                "    <Module test_other_basic_sub.py>",
                "      <Function test_basic_major_minor>",
                "      <Function test_basic_major_minor_internal>",
                "",
                "========================= no tests ran in 0.15 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2+ modules at the topmost level.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_basic.py::test_basic_major",
                "test_basic_root.py::test_basic_major",
                "test_other_basic_root.py::test_basic_major_minor",
                "test_other_basic_sub.py::test_basic_major_minor_internal"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Module 'test_basic.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test_basic_root.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test_basic_sub.py'>",
                "  <Function 'test_basic_major'>",
                "  <Function 'test_basic_minor'>",
                "<Module 'test_other_basic.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test_other_basic_root.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "<Module 'test_other_basic_sub.py'>",
                "  <Function 'test_basic_major_minor'>",
                "  <Function 'test_basic_major_minor_internal'>",
                "",
                "========================= no tests ran in 0.23 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2+ modules at the topmost level.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_basic.py::test_basic_major",
                "test_basic_root.py::test_basic_major",
                "test_other_basic_root.py::test_basic_major_minor",
                "test_other_basic_sub.py::test_basic_major_minor_internal"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Package '/home/user/test/pytest_scenario'>",
                "  <Module 'test_basic.py'>",
                "    <Function 'test_basic_major'>",
                "    <Function 'test_basic_minor'>",
                "  <Module 'test_basic_root.py'>",
                "    <Function 'test_basic_major'>",
                "    <Function 'test_basic_minor'>",
                "  <Module 'test_basic_sub.py'>",
                "    <Function 'test_basic_major'>",
                "    <Function 'test_basic_minor'>",
                "  <Module 'test_other_basic.py'>",
                "    <Function 'test_basic_major_minor'>",
                "    <Function 'test_basic_major_minor_internal'>",
                "  <Module 'test_other_basic_root.py'>",
                "    <Function 'test_basic_major_minor'>",
                "    <Function 'test_basic_major_minor_internal'>",
                "  <Module 'test_other_basic_sub.py'>",
                "    <Function 'test_basic_major_minor'>",
                "    <Function 'test_basic_major_minor_internal'>",
                "",
                "========================= no tests ran in 0.16 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Package-based source, 2+ modules at the topmost level.",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "test_basic.py::test_basic_major",
                "test_basic_root.py::test_basic_major",
                "test_other_basic_root.py::test_basic_major_minor",
                "test_other_basic_sub.py::test_basic_major_minor_internal"
            ],
            functionCount: 12,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.0+, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 12 items",
                "<Package /home/user/test/pytest_scenario>",
                "  <Module test_basic.py>",
                "    <Function test_basic_major>",
                "    <Function test_basic_minor>",
                "  <Module test_basic_root.py>",
                "    <Function test_basic_major>",
                "    <Function test_basic_minor>",
                "  <Module test_basic_sub.py>",
                "    <Function test_basic_major>",
                "    <Function test_basic_minor>",
                "  <Module test_other_basic.py>",
                "    <Function test_basic_major_minor>",
                "    <Function test_basic_major_minor_internal>",
                "  <Module test_other_basic_root.py>",
                "    <Function test_basic_major_minor>",
                "    <Function test_basic_major_minor_internal>",
                "  <Module test_other_basic_sub.py>",
                "    <Function test_basic_major_minor>",
                "    <Function test_basic_major_minor_internal>",
                "",
                "========================= no tests ran in 0.16 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "other_tests/test_base_stuff.py::test_do_other_test",
                "other_tests/test_base_stuff.py::test_do_test",
                "tests/further_tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_100",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 8 items",
                "<Module 'other_tests/test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'tests/further_tests/test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/further_tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "<Module 'tests/further_tests/deeper/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "",
                "======================== no tests ran in 0.30 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "other_tests/test_base_stuff.py::test_do_other_test",
                "other_tests/test_base_stuff.py::test_do_test",
                "tests/further_tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_100",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Package 'e:\\\\user\\\\test\\\\pytest_scenario'>",
                "  <Package 'e:\\\\user\\\\test\\\\pytest_scenario\\\\other_tests'>",
                "    <Module 'test_base_stuff.py'>",
                "      <Function 'test_do_test'>",
                "      <Function 'test_do_other_test'>",
                "  <Package 'e:\\\\user\\\\test\\\\pytest_scenario\\\\tests'>",
                "    <Package 'e:\\\\user\\\\test\\\\pytest_scenario\\\\tests\\\\further_tests'>",
                "      <Module 'test_gimme_5.py'>",
                "        <Function 'test_gimme_5'>",
                "      <Module 'test_multiply.py'>",
                "        <Function 'test_times_10'>",
                "        <Function 'test_times_2'>",
                "      <Package 'e:\\\\user\\\\test\\\\pytest_scenario\\\\tests\\\\further_tests\\\\deeper'>",
                "        <Module 'test_more_multiply.py'>",
                "          <Function 'test_times_100'>",
                "          <Function 'test_times_negative_1'>",
                "",
                "======================== no tests ran in 0.42 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "other_tests/test_base_stuff.py::test_do_other_test",
                "other_tests/test_base_stuff.py::test_do_test",
                "tests/further_tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_100",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Package e:\\\\user\\\\test\\\\pytest_scenario>",
                "  <Package e:\\\\user\\\\test\\\\pytest_scenario\\\\other_tests>",
                "    <Module test_base_stuff.py>",
                "      <Function test_do_test>",
                "      <Function test_do_other_test>",
                "  <Package e:\\\\user\\\\test\\\\pytest_scenario\\\\tests>",
                "    <Package e:\\\\user\\\\test\\\\pytest_scenario\\\\tests\\\\further_tests>",
                "      <Module test_gimme_5.py>",
                "        <Function test_gimme_5>",
                "      <Module test_multiply.py>",
                "        <Function test_times_10>",
                "        <Function test_times_2>",
                "      <Package e:\\\\user\\\\test\\\\pytest_scenario\\\\tests\\\\further_tests\\\\deeper>",
                "        <Module test_more_multiply.py>",
                "          <Function test_times_100>",
                "          <Function test_times_negative_1>",
                "",
                "======================== no tests ran in 0.42 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "other_tests/test_base_stuff.py::test_do_other_test",
                "other_tests/test_base_stuff.py::test_do_test",
                "tests/further_tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_100",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'other_tests/test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'tests/further_tests/test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/further_tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "<Module 'tests/further_tests/deeper/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "",
                "======================== no tests ran in 0.11 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "other_tests/test_base_stuff.py::test_do_other_test",
                "other_tests/test_base_stuff.py::test_do_test",
                "tests/further_tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_100",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'other_tests/test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'tests/further_tests/test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/further_tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "<Module 'tests/further_tests/deeper/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "",
                "======================== no tests ran in 0.17 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, tests throughout a deeper tree, including 2 distinct folder paths at different levels.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "other_tests/test_base_stuff.py::test_do_other_test",
                "other_tests/test_base_stuff.py::test_do_test",
                "tests/further_tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_100",
                "tests/further_tests/deeper/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module other_tests/test_base_stuff.py>",
                "  <Function test_do_test>",
                "  <Function test_do_other_test>",
                "<Module tests/further_tests/test_gimme_5.py>",
                "  <Function test_gimme_5>",
                "<Module tests/further_tests/test_multiply.py>",
                "  <Function test_times_10>",
                "  <Function test_times_2>",
                "<Module tests/further_tests/deeper/test_more_multiply.py>",
                "  <Function test_times_100>",
                "  <Function test_times_negative_1>",
                "",
                "======================== no tests ran in 0.17 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_more_multiply.py::test_times_100",
                "tests/further_tests/test_more_multiply.py::test_times_negative_1",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'tests/test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'tests/test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/further_tests/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "<Module 'tests/further_tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.26 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_more_multiply.py::test_times_100",
                "tests/further_tests/test_more_multiply.py::test_times_negative_1",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Package 'e:\\\\user\\\\test\\\\pytest_scenario'>",
                "  <Package 'e:\\\\user\\\\test\\\\pytest_scenario\\\\tests'>",
                "    <Module 'test_base_stuff.py'>",
                "      <Function 'test_do_test'>",
                "      <Function 'test_do_other_test'>",
                "    <Module 'test_gimme_5.py'>",
                "      <Function 'test_gimme_5'>",
                "    <Package 'e:\\\\user\\\\test\\\\pytest_scenario\\\\tests\\\\further_tests'>",
                "      <Module 'test_more_multiply.py'>",
                "        <Function 'test_times_100'>",
                "        <Function 'test_times_negative_1'>",
                "      <Module 'test_multiply.py'>",
                "        <Function 'test_times_10'>",
                "        <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.38 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_more_multiply.py::test_times_100",
                "tests/further_tests/test_more_multiply.py::test_times_negative_1",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Package e:\\\\user\\\\test\\\\pytest_scenario>",
                "  <Package e:\\\\user\\\\test\\\\pytest_scenario\\\\tests>",
                "    <Module test_base_stuff.py>",
                "      <Function test_do_test>",
                "      <Function test_do_other_test>",
                "    <Module test_gimme_5.py>",
                "      <Function test_gimme_5>",
                "    <Package e:\\\\user\\\\test\\\\pytest_scenario\\\\tests\\\\further_tests>",
                "      <Module test_more_multiply.py>",
                "        <Function test_times_100>",
                "        <Function test_times_negative_1>",
                "      <Module test_multiply.py>",
                "        <Function test_times_10>",
                "        <Function test_times_2>",
                "",
                "======================== no tests ran in 0.38 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_more_multiply.py::test_times_100",
                "tests/further_tests/test_more_multiply.py::test_times_negative_1",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'tests/test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'tests/test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/further_tests/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "<Module 'tests/further_tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.17 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_more_multiply.py::test_times_100",
                "tests/further_tests/test_more_multiply.py::test_times_negative_1",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'tests/test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'tests/test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/further_tests/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "<Module 'tests/further_tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.20 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2 test modules in subfolders of root, and 2 more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/further_tests/test_more_multiply.py::test_times_100",
                "tests/further_tests/test_more_multiply.py::test_times_negative_1",
                "tests/further_tests/test_multiply.py::test_times_10",
                "tests/further_tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module tests/test_base_stuff.py>",
                "  <Function test_do_test>",
                "  <Function test_do_other_test>",
                "<Module tests/test_gimme_5.py>",
                "  <Function test_gimme_5>",
                "<Module tests/further_tests/test_more_multiply.py>",
                "  <Function test_times_100>",
                "  <Function test_times_negative_1>",
                "<Module tests/further_tests/test_multiply.py>",
                "  <Function test_times_10>",
                "  <Function test_times_2>",
                "",
                "======================== no tests ran in 0.20 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2+ test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "<Module 'tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.26 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2+ test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Package 'e:\\\\user\\\\test\\\\pytest_scenario'>",
                "  <Module 'test_base_stuff.py'>",
                "    <Function 'test_do_test'>",
                "    <Function 'test_do_other_test'>",
                "  <Module 'test_gimme_5.py'>",
                "    <Function 'test_gimme_5'>",
                "  <Package 'e:\\\\user\\\\test\\\\pytest_scenario\\\\tests'>",
                "    <Module 'test_more_multiply.py'>",
                "      <Function 'test_times_100'>",
                "      <Function 'test_times_negative_1'>",
                "    <Module 'test_multiply.py'>",
                "      <Function 'test_times_10'>",
                "      <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.66 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2+ test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Package e:\\\\user\\\\test\\\\pytest_scenario>",
                "  <Module test_base_stuff.py>",
                "    <Function test_do_test>",
                "    <Function test_do_other_test>",
                "  <Module test_gimme_5.py>",
                "    <Function test_gimme_5>",
                "  <Package e:\\\\user\\\\test\\\\pytest_scenario\\\\tests>",
                "    <Module test_more_multiply.py>",
                "      <Function test_times_100>",
                "      <Function test_times_negative_1>",
                "    <Module test_multiply.py>",
                "      <Function test_times_10>",
                "      <Function test_times_2>",
                "",
                "======================== no tests ran in 0.66 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2+ test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "<Module 'tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.11 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2+ test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "<Module 'tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.41 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2+ test modules in root folder and two more in one (direct) subfolder.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module test_base_stuff.py>",
                "  <Function test_do_test>",
                "  <Function test_do_other_test>",
                "<Module test_gimme_5.py>",
                "  <Function test_gimme_5>",
                "<Module tests/test_more_multiply.py>",
                "  <Function test_times_100>",
                "  <Function test_times_negative_1>",
                "<Module tests/test_multiply.py>",
                "  <Function test_times_10>",
                "  <Function test_times_2>",
                "",
                "======================== no tests ran in 0.41 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2+ test modules in a subfolder off the root.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'tests/test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'tests/test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "<Module 'tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.20 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2+ test modules in a subfolder off the root.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Package 'e:\\\\user\\\\test\\\\pytest_scenario'>",
                "  <Package 'e:\\\\user\\\\test\\\\pytest_scenario\\\\tests'>",
                "    <Module 'test_base_stuff.py'>",
                "      <Function 'test_do_test'>",
                "      <Function 'test_do_other_test'>",
                "    <Module 'test_gimme_5.py'>",
                "      <Function 'test_gimme_5'>",
                "    <Module 'test_more_multiply.py'>",
                "      <Function 'test_times_100'>",
                "      <Function 'test_times_negative_1'>",
                "    <Module 'test_multiply.py'>",
                "      <Function 'test_times_10'>",
                "      <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.26 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2+ test modules in a subfolder off the root.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Package e:\\\\user\\\\test\\\\pytest_scenario>",
                "  <Package e:\\\\user\\\\test\\\\pytest_scenario\\\\tests>",
                "    <Module test_base_stuff.py>",
                "      <Function test_do_test>",
                "      <Function test_do_other_test>",
                "    <Module test_gimme_5.py>",
                "      <Function test_gimme_5>",
                "    <Module test_more_multiply.py>",
                "      <Function test_times_100>",
                "      <Function test_times_negative_1>",
                "    <Module test_multiply.py>",
                "      <Function test_times_10>",
                "      <Function test_times_2>",
                "",
                "======================== no tests ran in 0.26 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2+ test modules in a subfolder off the root.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'tests/test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'tests/test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "<Module 'tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.26 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2+ test modules in a subfolder off the root.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module 'tests/test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'tests/test_gimme_5.py'>",
                "  <Function 'test_gimme_5'>",
                "<Module 'tests/test_more_multiply.py'>",
                "  <Function 'test_times_100'>",
                "  <Function 'test_times_negative_1'>",
                "<Module 'tests/test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.26 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2+ test modules in a subfolder off the root.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "tests/test_base_stuff.py::test_do_test",
                "tests/test_base_stuff.py::test_do_other_test",
                "tests/test_gimme_5.py::test_gimme_5",
                "tests/test_more_multiply.py::test_times_100",
                "tests/test_more_multiply.py::test_times_negative_1",
                "tests/test_multiply.py::test_times_10",
                "tests/test_multiply.py::test_times_2"
            ],
            functionCount: 7,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 7 items",
                "<Module tests/test_base_stuff.py>",
                "  <Function test_do_test>",
                "  <Function test_do_other_test>",
                "<Module tests/test_gimme_5.py>",
                "  <Function test_gimme_5>",
                "<Module tests/test_more_multiply.py>",
                "  <Function test_times_100>",
                "  <Function test_times_negative_1>",
                "<Module tests/test_multiply.py>",
                "  <Function test_times_10>",
                "  <Function test_times_2>",
                "",
                "======================== no tests ran in 0.26 seconds ========================="
            ]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2+ modules at the topmost level.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "test_multiply.py::test_times_10",
                "test_multiply.py::test_times_2"
            ],
            functionCount: 4,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 4 items",
                "<Module 'test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.17 seconds ========================="]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2+ modules at the topmost level.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "test_multiply.py::test_times_10",
                "test_multiply.py::test_times_2"
            ],
            functionCount: 4,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 4 items",
                "<Package 'e:\\\\user\\\\test\\\\pytest_scenario'>",
                "  <Module 'test_base_stuff.py'>",
                "    <Function 'test_do_test'>",
                "    <Function 'test_do_other_test'>",
                "  <Module 'test_multiply.py'>",
                "    <Function 'test_times_10'>",
                "    <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.37 seconds ========================="]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Package-based source, 2+ modules at the topmost level.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "test_multiply.py::test_times_10",
                "test_multiply.py::test_times_2"
            ],
            functionCount: 4,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 4 items",
                "<Package e:\\\\user\\\\test\\\\pytest_scenario>",
                "  <Module test_base_stuff.py>",
                "    <Function test_do_test>",
                "    <Function test_do_other_test>",
                "  <Module test_multiply.py>",
                "    <Function test_times_10>",
                "    <Function test_times_2>",
                "",
                "======================== no tests ran in 0.37 seconds ========================="]
        },
        {
            pytest_version_spec: "< 3.7",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2 modules at the topmost level.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "test_multiply.py::test_times_10",
                "test_multiply.py::test_times_2"
            ],
            functionCount: 4,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.6.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 4 items",
                "<Module 'test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.18 seconds ========================="]
        },
        {
            pytest_version_spec: ">= 3.7 < 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2 modules at the topmost level.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "test_multiply.py::test_times_10",
                "test_multiply.py::test_times_2"
            ],
            functionCount: 4,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-3.7.4, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 4 items",
                "<Module 'test_base_stuff.py'>",
                "  <Function 'test_do_test'>",
                "  <Function 'test_do_other_test'>",
                "<Module 'test_multiply.py'>",
                "  <Function 'test_times_10'>",
                "  <Function 'test_times_2'>",
                "",
                "======================== no tests ran in 0.36 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.Windows,
            description: "Non-package source, 2 modules at the topmost level.",
            rootdir: "e:\\user\\test\\pytest_scenario",
            test_functions: [
                "test_base_stuff.py::test_do_test",
                "test_base_stuff.py::test_do_other_test",
                "test_multiply.py::test_times_10",
                "test_multiply.py::test_times_2"
            ],
            functionCount: 4,
            stdout: [
                "============================= test session starts =============================",
                "platform win32 -- Python 3.7.0, pytest-4.1.0, py-1.6.0, pluggy-0.7.1",
                "rootdir: e:\\user\\test\\pytest_scenario, inifile:",
                "collected 4 items",
                "<Module test_base_stuff.py>",
                "  <Function test_do_test>",
                "  <Function test_do_other_test>",
                "<Module test_multiply.py>",
                "  <Function test_times_10>",
                "  <Function test_times_2>",
                "",
                "======================== no tests ran in 0.36 seconds ========================="
            ]
        },
        {
            pytest_version_spec: ">= 4.1",
            platform: PytestDataPlatformType.NonWindows,
            description: "Parameterized tests",
            rootdir: "/home/user/test/pytest_scenario",
            test_functions: [
                "tests/test_spam.py::test_with_subtests[1-2]",
                "tests/test_spam.py::test_with_subtests[3-4]"
            ],
            functionCount: 2,
            stdout: [
                "============================= test session starts ==============================",
                "platform linux -- Python 3.7.1, pytest-4.2.1, py-1.7.0, pluggy-0.8.1",
                "rootdir: /home/user/test/pytest_scenario, inifile:",
                "collected 2 items",
                "<Package /home/user/test/pytest_scenario/tests>",
                "  <Module test_spam.py>",
                "    <Function test_with_subtests[1-2]>",
                "    <Function test_with_subtests[3-4]>",
                "",
                "========================= no tests ran in 0.02 seconds ========================="
            ]
        }
    ];
